package listeners;


import interface_grafica.TelaConsultaSocio;
import interface_grafica.TelaEdicaoSocio;
import interface_grafica.TelaPrincipal;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.ResultSet;
import java.sql.SQLException;

import javax.swing.JOptionPane;
import javax.swing.ListSelectionModel;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;

import banco.Queries;


public class ListenersTelaConsultaSocio implements ActionListener, ListSelectionListener{

	@Override
public void actionPerformed(ActionEvent e) {
		
    TelaPrincipal frame = TelaPrincipal.getInstance();
    TelaConsultaSocio tela = TelaConsultaSocio.getInstance();

    tela.getTabelaSocios().getSelectionModel().addListSelectionListener(new ListSelectionListener() {  
        public void valueChanged(ListSelectionEvent e) {  
              if (!e.getValueIsAdjusting()) {
            	  JOptionPane.showMessageDialog(null, "TESTE");
              }
        }
       });
 	
	if(e.getSource() == frame.getmCadastroSocio()) {
	}

}//actionPerformed
	

	@Override
	public void valueChanged(ListSelectionEvent e) {
		TelaConsultaSocio tela = TelaConsultaSocio.getInstance();
		
	//	System.out.println(tela.getTabelaSocios().getSelectedRow());
			
		ListSelectionModel model = tela.getTabelaSocios().getSelectionModel();  
        int lead = model.getLeadSelectionIndex();  
        displayRowValues(lead); 
	}      
        private void displayRowValues(int rowIndex){ 
        	TelaConsultaSocio tela = TelaConsultaSocio.getInstance();
            int columns = tela.getTabelaSocios().getColumnCount();  
            
            int tipo=0;
            String id="";
            String nome="";
            
            for(int col = 0; col < columns; col++)  
            {  
                Object o = tela.getTabelaSocios().getValueAt(rowIndex, col); 
                
                String aux[] = new String[3];
                aux[col] = o.toString();
                
                if(aux[0] != null){
                 id = aux[0];
                }
                if(aux[1]!= null){
                 nome = aux[1];
                }
                if(aux[2]!= null){
                if(aux[2].equals("Diretor"))
                	tipo = 1;
                else
                	tipo = 0;
                }
                             
            } 
            
            
            Queries query =  new Queries();
            
            String tabela = "socio";
            String condicao = "nome = '"+nome+"' AND codsocio='"+id+"' AND tiposocio='"+String.valueOf(tipo)+"'";
            
            System.out.println(condicao);
            
            try {
            	
            	ResultSet rs = 	query.consultar(tabela, condicao);
            	
            	while(rs.next()){            	
            	
            	String rua = rs.getString("rua");
    			String bairro = rs.getString("bairro");
    			String cep = rs.getString("cep");
    			String numeroCasa = rs.getString("numero");
    			String complemento =rs.getString("complemento");
    			String telefone = rs.getString("telefone");
    			
    			
    			String cpf = rs.getString("cpf");
    			String identidade = rs.getString("identidade"); 
    			String dataNascimento = rs.getString("datanascimento");
    			String nomeMae = rs.getString("nomemae");
    			String nomePai = rs.getString("nomepai"); 			
    			String email = rs.getString("email");
    			String naturalidade = rs.getString("naturalidade");
    			String profissao = rs.getString("profissao");
    			String sexo = rs.getString("sexo");
    			
    			int estadoCivil = rs.getInt("estadocivil");
    			int filho = rs.getInt("filho");
    			int escolaridade = rs.getInt("escolaridade");
    			
    			
    			TelaEdicaoSocio tela2  = TelaEdicaoSocio.getInstance();
    			
    			tela2.setNomeSocio(nome);
    			
    			tela2.setCpfSocio(cpf);
    			tela2.setIdentidadeSocio(identidade);
    			tela2.setProfissaoSocio(profissao);
    			tela2.setMaeSocio(nomeMae);
    			tela2.setPaiSocio(nomePai);
    			tela2.setRuaESocio(rua);
    			tela2.setBairroESocio(bairro);
    			tela2.setCepESocio(cep);
    			tela2.setNumeroESocio(numeroCasa);
    			tela2.setComplementoESocio(complemento);
    			tela2.setNascimentoSocio(dataNascimento);
    			tela2.setNaturalidadeSocio(naturalidade);
    			tela2.setEmailSocio(email);
    			tela2.setTelefoneSocio(telefone);
    			tela2.setIdSocio(id);
    			
    			TelaPrincipal frame = TelaPrincipal.getInstance();
    			
    			tela2.setBounds(10, 11, 1063, 557);
    			frame.getPanel().removeAll();
    		    frame.getPanel().add(tela2);
    		    frame.repaint();
    		    frame.validate();
    	           	
            	}
            	rs.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
                   	
            	
            	
        }  
		
	}